Management of Television Presentation Recordings

ABSTRACT

A method for managing television presentation recordings includes determining if a television presentation corresponding to a television presentation listing is scheduled to be recorded, assigning a color to the television presentation listing responsive to determining that the television presentation is scheduled to be recorded, and presenting the television presentation listing to a user.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.10/073,689, filed Feb. 11, 2002, which is hereby incorporated byreference in its entirety.

FIELD OF THE INVENTION

This invention relates in general to television systems, and moreparticularly, to the field of subscriber television systems.

BACKGROUND OF THE INVENTION

Cable television systems are now capable of providing many services inaddition to analog broadcast video. In implementing enhancedprogramming, the home communication terminal (“HCT”), otherwise known asthe settop box, has become an important computing device for accessingvarious video services. In addition to supporting traditional analogbroadcast video functionality, digital HCTs (or “DHCTs”) now alsosupport an increasing number of two-way digital services such asvideo-on-demand.

A DHCT is typically connected to a cable or satellite television networkand includes hardware and software necessary to provide various servicesand functionality. Preferably, some of the software executed by a DHCTis downloaded and/or updated via the cable television network. Each DHCTalso typically includes a processor, communication components andmemory, and is connected to a television or other display device, suchas a personal computer. While many conventional DHCTs are stand-alonedevices that are externally connected to a television, a DHCT and/or itsfunctionality may be integrated into a television or personal computer,as will be appreciated by those of ordinary skill in the art.

Services provided by a DHCT may include an interactive program guide(IPG) that provides listings of television presentations that areavailable via the DHCT. A user may be able to request a televisionpresentation by selecting a corresponding listing. Some IPGs providecolor coded listings that identify the theme of the correspondingtelevision presentation. For example, listings for sports presentationsmay have green backgrounds, listings for news programs may have redbackgrounds, and listings for movies may have purple backgrounds.

Some DHCTs are also equipped to record and/or to schedule the recordingof television presentations. The recording may be achieved via a storagedevice that uses electronic, magnetic, or optical recording media. Thestorage device may be incorporated into a DHCT or may be a separateunit. Recordings may be scheduled manually by a user or may be scheduledautomatically by the DHCT based on a user's previous viewing and/orrecording habits, or based on a user's expressed viewing preferences.

Problems that may arise in DHCT recording systems include limitedstorage capacity and time conflicts between two or more programs thatare scheduled to be recorded. A time conflict may cause a scheduledprogram that is desired by a user to not be recorded. Limited storagecapacity may cause a previously recorded television presentation that isdesired by a user to be automatically deleted or may cause a scheduledprogram to not be recorded. Other problems include users forgetting toschedule television presentation recordings or erroneously cancelingrecordings that were scheduled by other household members. Therefore,there exists a need for systems and methods that address these and/orother problems associated with the recording of televisionpresentations.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention can be better understood with reference to the followingdrawings. The components in the drawings are not necessarily drawn toscale, emphasis instead being placed upon clearly illustrating theprinciples of the present invention. In the drawings, like referencenumerals designate corresponding parts throughout the several views.

FIG. 1 is a block diagram depicting a non-limiting example of atelevision services system.

FIG. 2 is a block diagram depicting a non-limiting example of theinternal configuration of the DHCT depicted in FIG. 1.

FIG. 3 depicts a non-limiting example of a remote control device thatmay be used to provide user input to the DHCT depicted in FIG. 2.

FIG. 4 depicts types of shading that will be used to depict variouscolors in FIGS. 5-6, and 10-12.

FIG. 5 depicts a non-limiting example of an IPG that may be presented bythe DHCT depicted in FIG. 2.

FIG. 6. depicts a non-limiting example of an IPG grid that is presentedby the DHCT depicted in FIG. 2 showing that a recording had beenscheduled by a user.

FIG. 7 is an example screen diagram of a Future Program Options screenthat may be presented to a user after the user selects a televisionpresentation listing while being presented with the IPG screen depictedin FIG. 6.

FIG. 8 depicts a non-limiting example of another Future Program Optionsscreen that may be presented to a user after the user selects arecording option while being presented with Future Program Optionsscreen depicted in FIG. 7.

FIG. 9 depicts a non-limiting example of a PVR timer screen that may bepresented to a user after the user selects an option to edit a recordingtimer while being presented with the Future Program Options screendepicted in FIG. 8.

FIG. 10. depicts a non-limiting example of an IPG grid that is presentedby the DHCT depicted in FIG. 2 showing a time conflict between scheduledrecording.

FIG. 11. depicts a non-limiting example of an IPG grid that is presentedby the DHCT depicted in FIG. 2 showing a storage capacity conflictassociated with a scheduled recording.

FIG. 12. depicts a non-limiting example of an IPG grid that is presentedby the DHCT depicted in FIG. 2 showing a storage capacity conflict and atime conflict associated with a scheduled recording.

FIG. 13 is a flow chart depicting a non-limiting example of a routinefor assigning colors to television presentation listings in an IPG thatmay be presented by the DHCT depicted in FIG. 2.

FIG. 14 depicts a non-limiting example of an IPG color selection screenthat may be used by a user and/or a system operator to select colors fordesignating characteristics of television presentation listings in anIPG that may be presented by the DHCT depicted in FIG. 2.

FIG. 15 depicts a non-limiting example of an IPG color priorityselection screen that may be used by a user and/or a system operator toselect priorities for colors used in IPG listings that may be presentedby the DHCT depicted in FIG. 2.

FIG. 16 depicts an example color scheme selection screen that a systemoperator may use to supply color scheme information for determining thecolors of various IPG recording listings that may be presented by theDHCT depicted in FIG. 2.

FIG. 17 depicts a non-limiting example of a PVR recording listing screenthat may be provided by the DHCT depicted in FIG. 2.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The preferred embodiments of the present invention now will be describedmore fully hereinafter with reference to the accompanying drawings.These embodiments are examples, among others, of systems and methods ofthe present invention. Therefore, the present invention, which may beembodied in many different forms, should not be construed as limited tothe embodiments set forth herein. One embodiment of the presentinvention implements color coding in an IPG to provide users withinformation related to television presentations that are scheduled to berecorded (“scheduled recordings”). The information provided by the colorcoding may identify scheduled recordings, how the recordings werescheduled, and/or any related time or storage capacity conflicts, aswill be discussed in more detail below. In this manner, among otheruses, a user is able to quickly and easily determine which televisionpresentations the user may schedule for recording without creating arecording conflict, and which scheduled recordings the user may cancelin order to resolve a recording conflict. Furthermore, identifyingscheduled recording via color coding IPG listings allows recordingconflicts to be brought to a user's attention on a frequent and timelybasis, and therefore reduces the likelihood that recording conflictswill go unresolved by the user.

FIG. 1 is a block diagram depicting a non-limiting example of atelevision services system 100. In this example, the television servicessystem 100 includes a headend 110 and a DHCT 200 that are coupled via anetwork 130. The DHCT 200 is typically situated at a user's residence orplace of business and may be a stand-alone unit or integrated intoanother device such as, for example, a display device 140 or a personalcomputer (not shown). The DHCT 200 receives signals (video, audio and/orother data) from the headend 110 through the network 130 and providesany reverse information to the headend 110 through the network 130. Thenetwork 130 may be any suitable means for communicating televisionservices data including, for example, a cable television network, apublic switched telephone network (PSTN), a satellite communicationnetwork, the internet etc. The headend 110 may include one or moreserver devices (not shown) for providing video, audio, and textual datato client devices such as DHCT 200. The headend 110 and the DHCT 200cooperate to provide a user with television services including, forexample, broadcast television, an interactive program guide (IPG),and/or video-on-demand (VOD) presentations. The television services areprovided via the display device 140 which is typically a television.However, the display device 140 may also be any other device capable ofdisplaying video images including, for example, a computer monitor.

FIG. 2 is a block diagram depicting a non-limiting example of a DHCT200. The DHCT 200 described herein is merely illustrative and should notbe construed as implying any limitations upon the scope of the presentinvention. The DHCT 200 includes a communications interface 205 forreceiving signals (video, audio and/or other data) from the headend 110,at least one processor 240 for controlling operations of the DHCT 200,an output system 280 for driving the display device 140, and a tunersystem 250 for tuning to a particular television channel to bedisplayed. The tuner system 250 includes, in one implementation, anout-of-band tuner for bi-directional quadrature phase shift keying(QPSK) data communication and a quadrature amplitude modulation (QAM)tuner for receiving television signals. A receiver 260 receivesexternally-generated user inputs or commands from an input device suchas, for example, a remote control device.

The DHCT 200 may include one or more wireless or wired interfaces (notshown), also called ports, for receiving and/or transmitting data toother devices. For instance, the DHCT 200 may feature a USB (UniversalSerial Bus), an Ethernet port (for connection to a computer), anIEEE-1394 connection (for connecting to consumer electronics equipment),a serial port, a parallel port, a radio frequency (RF) interface, and/oran infra-red (IR) interface. In this manner, user inputs may be providedvia, for example, a personal computer, buttons or keys located on theexterior of the DHCT 200, a hand-held remote control device, and/or akeyboard that includes user-actuated keys, etc.

The DHCT 200 also includes a personal video recorder (PVR) storage unit290 for recording television presentations. The PVR storage unit 290 mayincorporate electronic, magnetic, optical, and/or other types of storagemedia for storing audio-visual data corresponding to televisionpresentations. Although shown as residing within the DHCT 200, the PVRstorage unit 290 may alternatively be located outside the DHCT 200 andcoupled thereto using a wired or wireless connection.

System memory 210 includes flash memory 230 and dynamic random accessmemory (DRAM) 220 for storing various applications, modules and data forexecution and use by the processor 240. Basic functionality of the DHCT200 is provided by an operating system 234 that is primarily stored inflash memory 230. The operating system 234 includes at least oneresource manager 235 that provides an interface to and coordination ofresources of the DHCT 200 such as, for example, computing resources.

One or more programmed software applications, herein referred to asapplications, are executed by utilizing the computing resources in theDHCT 200. Applications stored in flash memory 230 or DRAM 220 areexecuted by processor 240 under the auspices of the operating system234. Data required as input by an application is stored in DRAM 220 orflash memory 230 and read by processor 240 as needed during the courseof the application's execution. Input data may be data stored in DRAM220 by a secondary application or other source, either internal orexternal to the DHCT 200, or possibly anticipated by the application andthus created with the application at the time it was generated as asoftware application, in which case it is stored in flash memory 230.Data generated by an application is stored in DRAM 220 by processor 240during the course of the application's execution.

An application referred to as navigator 236 is also resident in flashmemory 230 and provides a navigation framework for services provided bythe DHCT 200. The navigator 236 registers for and in some cases reservescertain user inputs related to navigational keys such as televisionchannel up/down, last television channel, favorite television channel,etc. The client applications may be resident in flash memory 230 ordownloaded into DRAM 220.

The flash memory 230 also contains a platform library 231. The platformlibrary 231 is a collection of utilities useful to applications, such asa timer manager, a compression manager, a configuration manager, an HTMLparser, a database manager, a widget toolkit, a string manager, andother utilities (not shown). These utilities are accessed byapplications via application programming interfaces (APIs) as necessaryso that each application does not have to contain these utilities. Twocomponents of the platform library 231 that are shown in FIG. 2 are awindow manager 233 and a service application manager (SAM) client 232.

The window manager 233 provides a mechanism for implementing the sharingof the screen regions and user input. The window manager 233 is alsoresponsible for, as directed by one or more applications, implementingthe creation, display, and allocation of the limited DHCT 200 screenresources. Window manager 233 allows multiple applications to share thescreen by assigning ownership of screen regions, or windows. Windowmanager 233 communicates with resource manager 235 to coordinateavailable resources (such as display memory) among differentresource-consuming processes. Such processes may be directly orindirectly invoked by one or more applications.

The window manager 233 also maintains, among other things, a user inputregistry 221 in DRAM 220 so that when a user enters a key or a commandvia a remote control device or another input device such as a keyboardor mouse, the user input registry 221 may be accessed to determine whichof various applications running on the DHCT 200 should receive datacorresponding to the input key and in which order. As an application isexecuted, it registers a request to receive certain user input keys orcommands. When the user presses a key corresponding to one of thecommands on the remote control device, the command is received by thereceiver 260 and relayed to the processor 240. The processor 240dispatches the event to the operating system 234 where it is forwardedto the window manager 233. The window manager 233 then accesses the userinput registry 221 and routes data corresponding to the incoming commandto the appropriate application.

The SAM client 232 is a client component of a client-server pair ofcomponents, with the server component being located on the headend 110(FIG. 1). A SAM database 222 in DRAM 220 includes a data structure ofservices and a data structure of television channels that are createdand updated by the headend 110. Many television services can be definedusing the same application component, with different parameters.Television services include, without limitation and in accordance withone implementation, the presentation of television broadcast programs,video-on-demand (VOD), and interactive program guides (IPG). In general,the identification of a service includes the identification of anexecutable application that provides the service along with a set ofapplication-dependent parameters that indicate to the application theservice to be provided. As a non-limiting example, a service ofpresenting a television broadcast could be executed with a set ofparameters to view HBO or with a separate set of parameters to view CNN.Each association of the application component (tune video) and oneparameter component (HBO or CNN) represents a particular service thathas a unique service I.D.

Application clients can be downloaded into DRAM 220 at the request ofthe SAM client 232, typically in response to a request by the user or inresponse to a message from the headend. In this non-limiting example,DRAM 220 contains a PVR application 225 and an interactive program guide(IPG) application 224. It should be clear to one with ordinary skill inthe art that these applications are not limiting and merely serve asexamples for this present embodiment of the invention. Furthermore, oneor more DRAM based applications may, as an alternative embodiment, beresident in flash memory 230. These applications, and others provided bya television services system operator, are software entities forproviding services to the user.

In one implementation, applications executing on the DHCT 200 work withthe navigator 236 by abiding by several guidelines. First, anapplication utilizes the SAM client 232 for the provision, activation,and suspension of services and service enhancements. Second, anapplication shares DHCT 200 resources with other applications and abidesby the resource management policies of the SAM client 232, the operatingsystem 234, and the DHCT 200. Third, an application conforms tosituations where shared resources are only accessible via the navigator236. Fourth, when an application loses service authorization whileproviding a service, the application suspends the service via the SAMclient 232 (the navigator 236 will reactivate an individual serviceapplication when it later becomes authorized). Finally, an applicationclient is designed to not have access to certain user input keysreserved by the navigator 236 (e.g., power, channel +/−, volume +/−,etc.).

Data and software used in providing a DHCT service to a user may bestored in one or more of the following memory resources: a data storagedevice located at a headend, a data storage device located at a customerpremises, a non-volatile memory internal to the DHCT 200, and/or a harddrive internal to the DHCT 200. For example, an executable program oralgorithm corresponding to an operating system (OS) component, or to aclient platform component, or to a client application (e.g. IPGapplication 224), or to respective parts thereof, may reside in and/orexecute out of DRAM 220 and/or flash memory 230, or may reside in alocal storage device connected to DHCT 200 and may be transferred intoDRAM 220 for execution. Likewise, data input for an executable programor algorithm may reside in DRAM 220 or in flash memory 230, or mayreside in a local storage device connected to the DHCT 200 and may betransferred into DRAM 220 for use by an executable program or algorithm.In addition, data output by an executable program or algorithm may bewritten into DRAM 220 by the executable program or algorithm and may betransferred to flash memory 230 or to a local storage device for storagepurposes. It should be noted, however, that the present invention is notlimited by where or how any data and/or applications are stored orretrieved.

Each of the above mentioned applications preferably comprises executableinstructions for implementing logical functions and can be embodied inany computer-readable medium for use by or in connection with aninstruction execution system, apparatus, or device, such as acomputer-based system, processor-containing system, or other system thatcan fetch and execute the instructions. In the context of this document,a “computer-readable medium” can be any means that can contain, store,communicate, propagate, or transport the program for use by or inconnection with the instruction execution system, apparatus, or device.The computer readable medium can be, for example but not limited to, anelectronic, magnetic, optical, electromagnetic, infrared, orsemiconductor system, apparatus, device, or propagation medium. Morespecific examples (a non-exhaustive list) of the computer-readablemedium would include the following: an electrical connection(electronic) having one or more wires, a portable computer diskette(magnetic), a random access memory (RAM) (electronic), a read-onlymemory (ROM) (electronic), an erasable programmable read-only memory(EPROM or Flash memory) (electronic), an optical fiber (optical), and aportable compact disc read-only memory (CDROM) (optical). Note that thecomputer-readable medium could even be paper or another suitable mediumupon which the program is printed, as the program can be electronicallycaptured, via for instance optical scanning of the paper or othermedium, then compiled, interpreted or otherwise processed in a suitablemanner, and then stored in a computer memory. In addition, the scope ofthe present invention includes embodying the functionality of thepreferred embodiments of the present invention in logic embodied inhardware or software-configured mediums.

FIG. 3 depicts a non-limiting example of a remote control device 300that may be used to provide user input to the DHCT 200. The remotecontrol device 300 described herein is merely illustrative and shouldnot be construed as implying any limitations upon the scope of thepresent invention. Four arrow keys 310 are provided including an uparrow key 311, a down arrow key 312, a left arrow key 313, and a rightarrow key 314. The arrow keys 310 can be used to scroll throughon-screen options and/or to highlight an on-screen option, whereas aselect key 320 may be used to select a currently highlighted option. Aguide key 380 may be used to access a television program guide such as,for example, IPG 500 (FIG. 5). A PVR key 395 may be used to request alist of PVR recordings such as, for example, as illustrated in FIG. 17.The function of an “A” key 371, a “B” key 372, and a “C” key 373 variesdepending on the screen being presented to a user at the time of a key'sactivation. In one embodiment, the “A” key 371 can be used to access abrowse-by list for requesting an IPG screen that contains a subset oftelevision presentations falling under a user selected browse-bycategory such as, for example, comedy, drama, action/adventure, sports,etc.; the “B” key 372 can be used to request an IPG screen containingprogram listings for a user selected date; and the “C” key 373 can beused to request an IPG that covers a time period that includes thecurrent time.

In an alternative embodiment of the invention, different and/oradditional systems and methods of providing user input may be usedincluding, for example, a remote control device having different keysand/or key layouts, a keyboard device, a mouse, a voice activated inputsystem, a touch-screen display, etc. The invention described herein isnot limited by the type of device used to provide user input.

FIG. 4 shows types of shading that will be used to depict various colorsin FIGS. 5-6, 10-12, and 17. Each type of shading represents apre-determined color or combination of colors such as, for example,among others, red, white, blue, green, black, yellow, orange, purple,gold, silver, brown, pink, gray, or a combination thereof. The firsttype of shading 401 will be used to depict a First Color, the secondtype of shading 402 will be used to depict a Second Color, the thirdtype of shading 403 will be used to depict a Third Color, the fourthtype of shading 404 will be used to depict a Fourth Color, and the fifthtype of shading 405 will be used to depict a Fifth Color. Each of theFirst Color, the Second Color, the Third Color, the Fourth Color, andthe Fifth Color may be a single color or a combination of colors. Thecombination of colors may be in the form of a pattern such as, forexample, striped, checkered, or spotted, or may comprise a colorgradient. A background having a color gradient comprises a color thatgradually changes over a display area. The combination of colors mayalso be in the form colors that change over time such as, for example,by blinking, scrolling, or fading. Furthermore, each type of shadingrepresents a color or combination of colors that is distinguishable fromeach of the colors or combination of colors represented by another typeof shading. A color or combination of colors may be distinguishable fromanother color or combination of colors based on factors that includehue, saturation, and/or luminance. As a non-limiting example, amongothers, a lighter green color may be used to identify a first recordingcharacteristic, a darker green color may be used to identify a secondrecording characteristic, a striped red and green combination of colorsmay be used to identify a third recording characteristic, a checkeredred and white combination of colors may be used to identify a fourthrecording characteristic, and a gradient of blue colors may be used toidentify a fifth recording characteristic. Embodiments of the inventionare not, however, limited to any particular colors, combination ofcolors, or color schemes. Reference numerals corresponding to a type ofshading will also be used herein to refer to a corresponding color.Therefore, the colors depicted by the types of shading 401-405 will alsobe assigned the reference numerals 401-405, respectively.

In one embodiment of the invention, each of the colors 401-405 are usedin an IPG listing to signify a characteristic of a correspondingtelevision presentation. A television presentation may be for example, ashow, a program, a movie, or an event, among others, that is capable ofbeing displayed via a television. An example of a meaning that may beassociated with each color is as follows:

(a) The First Color 401 may be included in an IPG listing to signifythat the listed program had been automatically scheduled to be recordedby the DHCT 200.

(b) The Second Color 402 may be included in an IPG listing to signifythat the listed program had been explicitly scheduled to be recorded bya user.

(c) The Third Color 403 may be included in an IPG listing to signifythat the listed program has a recording time conflict (i.e. anothertelevision presentation is scheduled to be recorded during a partiallyor fully overlapping time period).

(d) The Fourth Color 404 may be included in an IPG listing to signify astorage capacity conflict (i.e. that there may be insufficient storagecapacity to record the listed program unless another program or partthereof is deleted prior to or during the recording of the listedprogram).

(e) The Fifth Color 405 may be included in an IPG listing to signify arecording time conflict and a storage capacity conflict.

With additional reference to FIGS. 1-4 throughout the remaining figuredescriptions, FIG. 5 depicts a non-limiting example of an IPG screen 500that illustrates an initial program guide arrangement in a time format.IPG screen 500 may be presented by the DHCT 200 (FIG. 2) in response touser input that is provided via, for example, the activation of theguide key 380 (FIG. 3). The top left portion of IPG screen 500 is adetailed focus area 510 that includes detailed television channelinformation for a currently highlighted program listing which, in thecurrent example, is the ABC News® listing 520. The detailed channelinformation may include channel number, channel name, program name,program description, program duration, and/or any episode information orrating.

Video showing on the television channel to which the DHCT 200 iscurrently tuned (for which audio is also playing, and which is typicallythe program occupying the full screen before the user is presented withIPG screen 500) is displayed in a video area 530. Immediately below thevideo area 530 is an information banner 540 for displaying thetelevision channel number to which the DHCT 200 is currently tuned(e.g., television channel 5), the current day and date (e.g., Thursday,January 17), and the current time (e.g., 5:00 p.m.).

An IPG grid 565 includes a main program display area 560, a time area570, and a channel area 580. The main program display area 560 containsa listing of television presentation titles corresponding to televisionpresentations that are or will be available for viewing during the timeperiods listed in the time area 570 via respective television channelsidentified in television channel area 580. The television channel area580 includes a vertical list of television channels organizedsequentially from top to bottom by increasing television channel number(except for the lowest numbered television channel which is typicallylisted immediately below the highest numbered television channel). Inone embodiment, the arrow buttons 310 (FIG. 3) can be used to scrollthrough the main program display area 560 and to highlight a desiredprogram. As a user scrolls in time across a calendar day boundary, theday and date indications displayed in various areas are automaticallyupdated.

Though other implementations are contemplated within the scope of thepresent invention, when the IPG application is first activated by theuser, the lowest numbered television channel listing in the televisionchannel lineup is typically centered in the television channel area 580.In this non-limiting example, the lowest television channel in thistelevision channel list displayed in the television channel area 580 isABC (channel 2). Continuing with this non-limiting example, theleft-most time column in the main program display area 560 includestitles of programs scheduled to be broadcast about two hours into thefuture with the middle title in the column being highlighted andcorresponding to a program on the lowest numbered television channel.Therefore, in this example, the ABC News listing 520, which is scheduledbe on the ABC channel (channel 2), is highlighted.

In an alternative embodiment, the left-most time column in the mainprogram display area 560 corresponds to a time period that covers thecurrent time. It should be noted that the current program shown in videoarea 530 and referenced in information banner 540, corresponds to acurrently tuned television channel, which in this example is televisionchannel 5, and not to the highlighted program ABC (channel 2). Thebottom area 550 of IPG screen 500 indicates the selected day for whichprogram data is being displayed as well as information about the currentfunctions of the “A”, “B”, and “C” keys on the remote control 300.

In yet another embodiment, an IPG may have fewer, greater, or differentcomponents. For example, in one embodiment an IPG may not include thedetailed focus area 510, the video area 530, the information banner 540,and/or the bottom area 550. In yet another embodiment, an IPG may havetime listings that are arranged vertically and television channellistings that are arranged horizontally. One of ordinary skill in theart will understand that various IPG configurations are possible withinthe scope of the present invention.

In the example shown in FIG. 5, the background of the Jeopardy listing590 has a First Color 401 that is used to signify that Jeopardy wasautomatically scheduled to be recorded. A program is typicallyautomatically scheduled to be recorded where there is a substantiallikelihood that a user may decide to view the program at a later time.Factors that may be used in determining whether a program isautomatically scheduled to be recorded may include, for example, userpreferences that were provided via user input, viewing behavior that ismonitored by the DHCT 200, preference data collected from other users,and/or previous recordings scheduled by a user.

FIG. 6. depicts a non-limiting example of an IPG grid 600 that may bepresented after the program identified as ABC News 520 is scheduled by auser to be recorded. The background of the ABC News listing 520 has aSecond Color 402 (FIG. 4) that is used to signify that ABC News wasexpressly scheduled to be recorded by a user. As discussed above, theSecond Color 402 is a color that is distinguishable from the First Color401. A user may schedule the recording of ABC News by, for example,activating the record key 301 while the ABC News listing 520 ishighlighted. A person of ordinary skill in the art will understand thatthere are many alternative methods of scheduling the recording of atelevision presentation within the scope of the present invention. Forexample, in one embodiment of the invention, a user may schedule therecording of a television presentation by using the number pad 350 toprovide the necessary scheduling information while being presented witha banner or screen for scheduling the recording of a televisionpresentation. The necessary scheduling information may include, forexample, channel number, date, beginning time, and ending time. Inanother embodiment, a user may schedule the recording of a televisionpresentation as discussed in reference to FIGS. 7-9.

FIG. 7 depicts a non-limiting example of a Future Program Options screen700 that may be presented to a user after the user selects the ABC Newslisting 520 while being presented with IPG screen 500. A Future ProgramOptions menu 701 gives the user an option to tune to the channelcorresponding to ABC News, an option to set a PVR timer to record ABCNews, and an option to schedule a reminder banner to be displayed as anoverlay window over a full screen program shortly before ABC News isscheduled to start. If the user selects the option to set a PVR timer703, then the DHCT 200 becomes scheduled to tune to and/or record atelevision presentation that is carried on the channel corresponding toABC News (channel 2) during the time period that ABC News is scheduledto be broadcast (7:00 p.m. to 7:30 p.m.). Upon selection of option 703,the Future Program Options menu 701 is removed, and the user is providedwith IPG grid 600 indicating that ABC News is scheduled to be recorded.In an alternative embodiment, the user may be presented with a modifiedFuture Program Options screen as illustrated in FIG. 8.

FIG. 8 depicts a non-limiting example of a Future Program Options screen800 that may be presented to a user after the user selects the recordingoption 703 while being presented with Future Program Options screen 700(FIG. 7). The detailed focus area 510 contains a recording symbol 801indicating that the program identified in the detailed focus area 510 isscheduled to be recorded. The user may select the option 804 to cancelthe PVR timer, in which case ABC News will no longer be scheduled to berecorded. Alternatively, the user may select the timer editing option805 in order to edit the PVR timer corresponding to ABC News.

FIG. 9 depicts a non-limiting example of a PVR timer screen 900 thatillustrates how PVR timer settings may be edited by a user. The PVRtimer screen 900 may be presented to a user after the user selects thetimer editing option 805 while being presented with Future ProgramOptions screen 800 (FIG. 8). In another embodiment of the invention, thePVR timer screen 900 may be presented to a user after the user activatesthe record button 301 while being presented with IPG screen 500 (FIG.5). The user can use the remote control device 300 to send signals tothe DHCT 200 that would cause the timer settings listed in the PVR timerscreen 900 to be highlighted and changed in accordance with user input.For example, a user may use the left and right arrow buttons 313 and 314(FIG. 3) in order to highlight a desired time element, and the up anddown arrow buttons 311 and 312 in order to change the highlighted timeelement. The start time 901 listed under the heading START is the timethat the PVR is scheduled to start recording and the stop time 902listed under the heading STOP is the time that the PVR is scheduled tostop recording. By changing these time settings and then pressing the“A” button on the remote control device 300, the PVR recording schedulewill be changed accordingly.

FIG. 10 depicts a non-limiting example of an IPG grid 1000 that may bepresented after the program identified as Jeopardy 590 is scheduled tobe recorded. The backgrounds of the Rivera Live listing 1001, the ABCNews listing 520, and the Jeopardy listing 590 have a Third Color 403that is used to signify that each of these programs has a recording timeconflict. A television presentation has a recording time conflict if itis scheduled to be recorded during a time period that overlaps a timeperiod during which another television presentation is scheduled to berecorded. In this example, Rivera Live 1001 has a recording timeconflict with ABC News 520 and Jeopardy 590, and vice versa. A user maydecide to cancel a scheduled recording in light of a recording timeconflict. A scheduled recording may be cancelled by highlighting orselecting the scheduled program and then activating a designated remotecontrol button for canceling the scheduled recording. Designated remotecontrol button(s) for canceling a scheduled recording may include, forexample, the record key 301 and/or the stop key 302.

FIG. 11 depicts a non-limiting example of an IPG grid 1100 that may bepresented after the program identified as Friends 1101 is scheduled tobe recorded. The background of the Friends listing 1101 has a FourthColor 404 (FIG. 4) that is used to signify that Friends has a storagecapacity conflict. A storage capacity conflict occurs when there isinsufficient storage capacity to store a scheduled recording unlessanother recording or part thereof is deleted prior or during to therecording of the scheduled recording. In this example, the storagecapacity conflict occurs because the programs identified as Rivera Live1001, ABC News 520, and Jeopardy 590 are expected to occupy enoughadditional storage capacity that not enough storage capacity will remainfor Friends 1101 to be recorded in its entirety unless a recordedprogram or part thereof is deleted prior to or during the recording ofFriends.

FIG. 12. depicts a non-limiting example of an IPG grid 1200 that may bepresented after the program identified as College Basketball 1201 isscheduled to be recorded. The background of the College Basketballlisting 1201 has a Fifth Color 405 that is used to signify that CollegeBasketball 1201 has a storage capacity conflict and a recording timeconflict. In this example, a storage capacity conflict occurs becausethe programs identified as Rivera Live 1001, ABC News 520, and Jeopardy590 are expected to occupy enough additional storage capacity that notenough storage capacity will remain for College Basketball 1201 to berecorded in its entirety unless a recorded program or part thereof isdeleted prior to or during the recording of College Basketball.Furthermore, a time conflict occurs because the programs identified asRivera Live 1001, ABC News 520, Jeopardy 590, and Friends 1101 arescheduled to be recorded during a time period that overlaps the timeperiod during which College Basketball 1201 is scheduled to be recorded.Note that the listings for Rivera Live 1001, Jeopardy 590, and Friends1101 also comprises a Fifth Color 405 that is used to signify that theselistings have a storage capacity conflict and a recording time conflict.Note that the ABC News listing 520 has a Third Color 403 (FIG. 4) thatis used to signify that ABC News has a time conflict with one or moreother listings.

FIG. 13 is a flow chart depicting a non-limiting example of a routine1300 that may be used to assign colors to recording listings. Theroutine 1300 may be initiated before each IPG listing is displayedand/or after a recording is scheduled. After the routine 1300 isinitiated at step 1301, the routine 1300 determines if a listed programhas a recording time and storage capacity conflict with another program.If the listed program has a recording time and storage capacity conflictwith another program, then the routine 1300 assigns in step 1303 a FifthColor 405 (FIG. 4) to the listed program and the routine 1300 terminatesas indicated in step 1312.

If the listed program does not have a recording time and storagecapacity conflict with another program, then the routine 1300 determinesin step 1304 if the listed program has a storage capacity conflict withanother program. If the listed program has a storage capacity conflictwith another program, then the routine 1300 assigns in step 1305 aFourth Color 404 to the listed program and the routine 1300 terminatesas indicated in step 1312.

If the listed program does not have a storage capacity conflict withanother program, then the routine 1300 determines in step 1306 if thelisted program has a recording time conflict with another program. Ifthe listed program has a recording time conflict with another program,then the routine 1300 assigns in step 1307 a Third Color 303 to thelisted program and the routine 1300 terminates as indicated in step1312.

If the listed program does not have a recording time conflict withanother program, then the routine 1300 determines in step 1308 if thelisted program was automatically scheduled to be recorded by the DHCT200. If the listed program was automatically scheduled, then the routine1300 assigns in step 1309 a Second Color 402 to the listed program andthe routine 1300 terminates as indicated in step 1312.

If the listed program was automatically scheduled to be recorded, thenthe routine 1300 determines in step 1310 if the listed program wasscheduled to be recorded by a user. If the listed program was scheduledto be recorded by a user, then the routine 1300 assigns in step 1311 aFirst Color 401 to the listed program and the routine 1300 terminates asindicated in step 1312.

Any blocks or steps shown in FIG. 13 represent modules, segments, orportions of code which include one or more executable instructions forimplementing specific logical functions or steps in a process. Alternateimplementations are included within the scope of the preferredembodiment of the present invention in which functions or steps may beexecuted out of order from that shown or discussed, includingsubstantially concurrently or in reverse order, depending on thefunctionality involved, as would be understood by those reasonablyskilled in the art. For example, step 1304 may be executed before step1306. Similarly, step 1310 may be executed before step 1308.

It will also be appreciated by those skilled in the art that thefunctionality provided by the routine 1300, can also be implementedthrough hardware (e.g., an application specific integrated circuit(ASIC) and supporting circuitry). Each implementation has itsadvantages, however. For example, hardware enjoys a speed and, arguably,a reliability advantage over software because hardware testing andverification methods are currently more advanced than softwareverification methods. On the other hand, software can be less expensivethan customized hardware and offers greater flexibility in adding ormodifying product features.

Further, the functionality provided by the routine 1300, can be embodiedin any computer-readable medium for use by or in connection with acomputer-related system (e.g., an embedded system such as a modem) ormethod. In this context of this document, a computer-readable medium isan electronic, magnetic, optical, semiconductor, or other physicaldevice or means that can contain or store a computer program or data foruse by or in connection with a computer-related system or method. Also,the computer program or data may be transferred to anothercomputer-readable medium by any suitable process such as by scanning thecomputer-readable medium. Thus, the computer-readable medium could bepaper or other suitable medium upon which the computer program can beprinted, scanned with an optical scanner, and transferred into thecomputer's memory or storage.

FIG. 14 depicts a non-limiting example of an IPG color selection screen1400 that may be used by a user and/or a system operator to selectcolors for designating characteristics of program listings. The IPGcolor selection screen 1400 includes a list of program listingcharacteristics 1401 and a list of color entry fields 1402. Each of theentry fields 1402 may be used to designated a color for a respectiveprogram listing characteristic. In one possible implementation, a usermay use the up and down arrow keys 311 and 312 to highlight a desiredcolor selection field, and may then use the left and right arrow keys313 and 314 to select a desired color. A navigation instruction section1403 provides information about the functionality of selected remotecontrol buttons.

FIG. 15 depicts a non-limiting example of an IPG color priorityselection screen 1500 that may be used by a user and/or a systemoperator to select priorities for IPG listing colors. The IPG colorpriority selection screen 1500 includes a list of program listing colors1501 and a list of priority entry fields 1502. Each of the entry fields1502 may be used to designated a priority for a respective programlisting color. The priority entries may subsequently be used to assign acolor to a program listing that has multiple recording characteristicsfor which different colors may be assigned. For example, a user mayassign a top priority (1) to a color corresponding to time and capacityconflicts and a lowest priority (5) to a color corresponding to userscheduled recordings. In this manner if a user scheduled recording has atime and capacity conflict, it would be assigned the color correspondingto time and capacity conflicts, and not the color corresponding to userscheduled recordings.

FIG. 16 depicts a non-limiting example of a color scheme selectionscreen 1600 that a system operator may use to supply color schemeinformation for determining the colors of various IPG recordinglistings. The color scheme selection screen 1600 includes a list ofcolor schemes 1601, a list of respective color charts 1602, and a groupof selection boxes 1603. Each color scheme is assigned a pre-determinedname and is associated with a pre-determined set of color selections.The color charts 1602 inform the system operator of the colors used inthe various color schemes. A system operator may select a selection boxcorresponding to the desired color scheme. The selection made by thesystem operator is communicated to a headend 110, then forwarded tomultiple DHCTs 200 where it is implemented by IPG applications 224. Inthe current example, the “Ball Park” color scheme 1606 is shown ashaving been selected, as indicated in selection box 1607. The Ball Parkcolor scheme 1606 has a color chart 1608 that shows the colors that areused in the color scheme 1606. The color chart 1608 includes the colors401, 402, 403, 404, and 405. Each of the colors in the color chart 1608represents a color that will be used to provide information on ascheduled recording as part of the selected color scheme 1606. Althoughnot depicted in FIG. 16, each of the boxes 1609 in the list of colorcharts 1602 includes a color that is part of a corresponding colorscheme.

FIG. 17 depicts a non-limiting example of a PVR recording listing screen1700 that may be used to provide a user with information about scheduledrecordings. The PVR recording listing screen 1700 may be presented aftera user activates the PVR key 395 (FIG. 3) while being presented with IPGgrid 1200 (FIG. 12). The PVR recording listing screen 1700 comprisesfour columns: a first column 1701 contains a list of program titles ofscheduled recordings, a second column 1702 contains a list of respectivechannels, a third column 1703 contains a list of respective recordingtimes, a fourth column 1704 contains a list of respective recordingdates. Each of the recording listings in the first column 1701 isassigned a color that indicates a corresponding characteristic. In thisexample, recording listings 1705-1708 are assigned a Fifth Color 405indicating that they have a recording time conflict and a storagecapacity conflict, recording listing 1709 is assigned a Third Color 403indicating that it has a recording time conflict, and recording listings1710 and 1711 are assigned a Fourth Color 404 indicating that they havea storage capacity conflict. In one embodiment of the invention, ascheduled recording may be cancelled by highlighting or selecting thecorresponding listing and then activating a designated remote controlbutton for canceling the scheduled recording.

It should be emphasized that the above-described embodiments of thepresent invention, particularly any “preferred embodiments”, are merelypossible examples, among others, of the implementations, setting forth aclear understanding of the principles of the invention. Many variationsand modifications may be made to the above-described embodiments of theinvention without departing substantially from the principles of theinvention. All such modifications and variations are intended to beincluded herein within the scope of the disclosure and present inventionand protected by the following claims.

1. A method that is implemented via a digital home communicationterminal for managing television presentation recordings comprising:determining whether a listing for a scheduled recording of a televisionpresentation to be recorded in the future meets a scheduled recordingcondition of a plurality of scheduled recording conditions; assigning anon-textual visual indicator of a plurality of non-textual visualindicators based on the determination; and presenting the televisionpresentation listing as part of an interactive program guide (IPG)having one of the assigned non-textual visual indicators for thecorresponding television presentation listing.
 2. The method of claim 1,wherein the plurality of scheduled recording conditions include: (1)whether a television presentation corresponding to a televisionpresentation listing is scheduled automatically to be recorded; (2)whether a television presentation corresponding to a televisionpresentation listing is scheduled by a user to be recorded; (3) whetherthe television presentation has a time scheduling conflict with anothertelevision presentation that is scheduled to be recorded; (4) whetherthe television presentation has a storage capacity conflict with anothertelevision presentation that is scheduled to be recorded; and (5)whether the television presentation has a time scheduling conflict and astorage capacity conflict with the another television presentation thatis scheduled to be recorded.
 3. The method of claim 1, wherein theplurality of non-textual visual indicators includes a single color and acombination of colors in a pattern.
 4. The method of claim 1, whereinthe plurality of non-textual visual indicators includes a single colorand a combination of colors that change over time, wherein the changingover time includes blinking, scrolling, and fading.
 5. The method ofclaim 1, wherein scheduling the recording of the television presentationis edited in response to receiving input from a user while presentingthe television listing.
 6. The method of claim 1, wherein assigning oneof a plurality of non-textual visual indicators is configurable by auser or a system operator.
 7. The method of claim 1, wherein thetelevision presentation listing is presented via a television as part ofa list of scheduled program recordings.
 8. A system utilizing a digitalhome communication terminal for managing television presentationrecordings comprising: a memory for storing logic; a processorconfigured with the logic to: determine whether a listing for ascheduled recording of a television presentation to be recorded in thefuture meets a scheduled recording condition of a plurality of scheduledrecording conditions; assign a non-textual visual indicator of aplurality of non-textual visual indicators based on the determination;and present the television presentation listing as part of aninteractive program guide (IPG) having one of the assigned non-textualvisual indicators for the corresponding television presentation listing.9. The system of claim 8, wherein the plurality of scheduled recordingconditions include: (1) whether a television presentation correspondingto a television presentation listing is scheduled automatically to berecorded; (2) whether a television presentation corresponding to atelevision presentation listing is scheduled by a user to be recorded;(3) whether the television presentation has a time scheduling conflictwith another television presentation that is scheduled to be recorded;(4) whether the television presentation has a storage capacity conflictwith another television presentation that is scheduled to be recorded;and (5) whether the television presentation has a time schedulingconflict and a storage capacity conflict with the another televisionpresentation that is scheduled to be recorded.
 10. The system of claim8, wherein the plurality of non-textual visual indicators includes asingle color and a combination of colors in a pattern.
 11. The system ofclaim 8, wherein the plurality of non-textual visual indicators includesa single color and a combination of colors that change over time,wherein the changing over time includes blinking, scrolling, and fading.12. The system of claim 8, wherein scheduling the recording of thetelevision presentation is edited in response to receiving input from auser while presenting the television listing.
 13. The system of claim 8,wherein assigning one of a plurality of non-textual visual indicators isconfigurable by a user or a system operator.
 14. The system of claim 8,wherein the television presentation listing is presented via atelevision as part of a list of scheduled program recordings.
 15. Acomputer-readable medium having a computer program comprising: logicconfigured to determine whether a listing for a scheduled recording of atelevision presentation to be recorded in the future meets a scheduledrecording condition of a plurality of scheduled recording conditions;logic configured to assign a non-textual visual indicator of a pluralityof non-textual visual indicators based on the determination; and logicconfigured to present the television presentation listing as part of aninteractive program guide (IPG) having one of the assigned non-textualvisual indicators for the corresponding television presentation listing.16. The computer readable medium of claim 15, further comprising logicto determine: (1) whether a television presentation corresponding to atelevision presentation listing is scheduled automatically to berecorded; (2) whether a television presentation corresponding to atelevision presentation listing is scheduled by a user to be recorded;(3) whether the television presentation has a time scheduling conflictwith another television presentation that is scheduled to be recorded;(4) whether the television presentation has a storage capacity conflictwith another television presentation that is scheduled to be recorded;and (5) whether the television presentation has a time schedulingconflict and a storage capacity conflict with the another televisionpresentation that is scheduled to be recorded.
 17. The computer readablemedium of claim 15, wherein the plurality of non-textual visualindicators includes a single color and a combination of colors in apattern.
 18. The computer readable medium of claim 15, wherein theplurality of non-textual visual indicators includes a single color and acombination of colors that change over time, wherein the changing overtime includes blinking, scrolling, and fading.
 19. The computer readablemedium of claim 15, wherein the logic configured to schedule therecording of the television presentation is edited in response toreceiving input from a user while presenting the television listing. 20.The computer readable medium of claim 15, wherein assigning one of aplurality of non-textual visual indicators is configurable by a user ora system operator.